package com.manli.api.dto;

import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;

/**
 * VIEW
 *
 * @author manli
 * @email
 * @date 2020-09-07 14:43:19
 */
@ApiModel(value = "VIEW")
@Data
public class ViewOrderGoods implements Serializable {

	/**
	 * branch_id
	 */

	@ApiModelProperty(value = "branch_id",dataType = "Integer")
	private Integer branchId;
	/**
	 * 机构名称
	 */

	@ApiModelProperty(value = "机构名称",dataType = "String")
	private String branchName;
	/**
	 * 总店头像
	 */

	@ApiModelProperty(value = "总店头像",dataType = "String")
	private String branchHeadImg;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "Integer")
	private Integer partnerId;
	/**
	 * 分支机构名称
	 */

	@ApiModelProperty(value = "分支机构名称",dataType = "String")
	private String partnerName;
	/**
	 * 店铺头像
	 */

	@ApiModelProperty(value = "店铺头像",dataType = "String")
	private String partnerHeadImg;
	/**
	 * 唯一标识
	 */

	@ApiModelProperty(value = "唯一标识",dataType = "Integer")
	private Integer goodsDefId;
	/**
	 * 商品图片 可以多个用逗号隔开
	 */

	@ApiModelProperty(value = "商品图片 可以多个用逗号隔开",dataType = "String")
	private String goodsPic;
	/**
	 * 商品名称
	 */

	@ApiModelProperty(value = "商品名称",dataType = "String")
	private String goodsName;
	/**
	 * -2草稿 ,-1提交审核(待审核)0退回,1上架成功,2下架,-3删除
	 */

	@ApiModelProperty(value = "-2草稿 ,-1提交审核(待审核)0退回,1上架成功,2下架,-3删除",dataType = "Integer")
	private Integer goodsdefstatus;
	/**
	 * 1：到店自取 2：配送到家
	 */

	@ApiModelProperty(value = "1：到店自取 2：配送到家",dataType = "String")
	private String buyMethod;
	/**
	 * 唯一标识
	 */

	@ApiModelProperty(value = "唯一标识",dataType = "Integer")
	private Integer goodsModelId;
	/**
	 * 商品规格名称
	 */

	@ApiModelProperty(value = "商品规格名称",dataType = "String")
	private String goodsModelName;
	/**
	 * 0禁用 1启用，-1删除
	 */

	@ApiModelProperty(value = "0禁用 1启用，-1删除",dataType = "Integer")
	private Integer goodsmodelstatus;
	/**
	 * 商品数量
	 */

	@ApiModelProperty(value = "商品数量",dataType = "Integer")
	private Integer goodsTotal;
	/**
	 * 成本价
	 */

	@ApiModelProperty(value = "成本价",dataType = "Double")
	private Double goodsModelCost;
	/**
	 * 销售价
	 */

	@ApiModelProperty(value = "销售价",dataType = "Double")
	private Double goodsModelSalePrice;
	/**
	 * 渠道价(给系统代卖,系统会做推广,则商户收到的利润是channel_price - cost ,系统的利润是sale_price-channel_price）
	 */

	@ApiModelProperty(value = "渠道价(给系统代卖,系统会做推广,则商户收到的利润是channel_price - cost ,系统的利润是sale_price-channel_price）",dataType = "Double")
	private Double goodsModelChannelPrice;
	/**
	 * 原价
	 */

	@ApiModelProperty(value = "原价",dataType = "Double")
	private Double goodsModelSourcePrice;
	/**
	 *  -1取消订单 0 待支付 1支付成功  2 退款中  3已退款  4 已使用（已核销）
	 */

	@ApiModelProperty(value = " -1取消订单 0 待支付 1支付成功  2 退款中  3已退款  4 已使用（已核销）",dataType = "Integer")
	private Integer status;
	/**
	 * 购物者的地址
	 */

	@ApiModelProperty(value = "购物者的地址",dataType = "String")
	private String buyerAddress;
	/**
	 * 购物者的联系方式
	 */

	@ApiModelProperty(value = "购物者的联系方式",dataType = "String")
	private String buyerPhone;
	/**
	 * 购买数量
	 */

	@ApiModelProperty(value = "购买数量",dataType = "Integer")
	private Integer buyCount;
	/**
	 * 总订单号
	 */

	@ApiModelProperty(value = "总订单号",dataType = "String")
	private String orderNoMain;
	/**
	 * 子订单号
	 */

	@ApiModelProperty(value = "子订单号",dataType = "String")
	private String orderNoSub;
	/**
	 * 本订单应该支付多少钱
	 */

	@ApiModelProperty(value = "本订单应该支付多少钱",dataType = "Double")
	private Double shouldPayPrice;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String buyerUnionid;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String buyerOpenid;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String shareUnionid;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String shareOpenid;
	/**
	 * 订单取消时间
	 */

	@ApiModelProperty(value = "订单取消时间",dataType = "Date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date cancelTime;
	/**
	 * 订单支付时间
	 */

	@ApiModelProperty(value = "订单支付时间",dataType = "Date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date payTime;
	/**
	 * 退款时间
	 */

	@ApiModelProperty(value = "退款时间",dataType = "Date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date refuseTime;
	/**
	 * 订单创建时间
	 */

	@ApiModelProperty(value = "订单创建时间",dataType = "Date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createTime;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String storename;
	/**
	 *
	 */

	@ApiModelProperty(value = "",dataType = "String")
	private String storeheadimg;

	@ApiModelProperty(value = "",dataType = "Integer")
	private Integer activityTypeId;


	@ApiModelProperty(value = "",dataType = "String")
	private String source;

	@ApiModelProperty(value = "",dataType = "Integer")
	private String sourceSub;

	@ApiModelProperty(value = "本订单总共优惠多少钱",dataType = "Double")
	private Double preferentialPrice;


	@ApiModelProperty(value = "申请退款id",dataType = "Integer")
	private Integer orderRefuseApplyId;

	@ApiModelProperty(value = "",dataType = "String")
	private String buyerName;

	@ApiModelProperty(value = "退款审核状态",dataType = "String")
	private Integer orderRefuseApplyStatus;

	@ApiModelProperty(value = "退款审核时间",dataType = "Date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date auditTime;

	@ApiModelProperty(value = "退款审核备注",dataType = "String")
	private String auditRemark;

	@ApiModelProperty(value = "退款申请备注",dataType = "String")
	private String applyRemark;

	@ApiModelProperty(value = "退款审核人",dataType = "String")
	private String auditUsername;

	@ApiModelProperty(value = "子订单退款多少钱 单位分",dataType = "Integer")
	private Integer refusePrice;

	@ApiModelProperty(value = "下单人的手机号",dataType = "String")
	private String orderMakerPhoneNum;

	@ApiModelProperty(value = "0 待评价 1 已评价",dataType = "Integer")
	private Integer appraise;






}
